<%--                                                                       --%>
<%-- Copyright (c) 2003-2005 BroadVision, Inc.  All rights reserved.       --%>
<%--                                                                       --%>
<%-- This software is copyrighted. Under the copyright laws, this software --%>
<%-- may not be copied, in whole or in part, without prior written consent --%>
<%-- of BroadVision, Inc. or its assignees. This software is provided      --%>
<%-- under the terms of a license between BroadVision and the recipient,   --%>
<%-- and its use is subject to the terms of that license.                  --%>
<%--                                                                       --%>
<%-- This software may be protected by one or more U.S. and International  --%>
<%-- patents.  Certain applications of BroadVision One-To-One software are --%>
<%-- covered by U.S. patent 5,710,887.                                     --%>
<%--                                                                       --%>
<%-- TRADEMARKS: BroadVision and BroadVision One-To-One are registered     --%>
<%-- trademarks of BroadVision, Inc., in the United States and the         --%>
<%-- European Community, and are trademarks of BroadVision, Inc., in other --%>
<%-- countries.  The BroadVision logo, is a trademark of BroadVision,      --%>
<%-- Inc., in the United States and other countries. Additionally, IONA    --%>
<%-- and Orbix are trademarks of IONA Technologies, Ltd.  RSA, MD5, and    --%>
<%-- RC2 are trademarks of RSA Data Security, Inc.                         --%>
<%--                                                                       --%>

<%@ taglib uri="/WEB-INF/c.tld" prefix="c" %>
<%@ taglib uri="/WEB-INF/struts-html-el.tld" prefix="html-el" %>
<%@ taglib uri="/WEB-INF/struts-bean-el.tld" prefix="bean-el" %>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %>

<%
  String ctxPath = request.getContextPath();
%>

<script language="JavaScript">

  // Create a dummy (timestamp) attribute to get around an IE cache problem.
  function getTimeStamp() {
    var now = new Date;
    var timestamp = '' + now.getYear() + now.getMonth() + now.getDate() + 
      now.getHours() + now.getMinutes() + now.getSeconds() + now.getMilliseconds();
    return timestamp;
  }
  
  function commentsEditPopup(formName, processOid, logtime, userId, changeIn) {
    if (doValidateEntriesPerPage(formName) == false) {
      return false;
    }
    var timestamp = getTimeStamp();
    var popupUrl = '<html-el:rewrite page="/bp/processChangeEditPopup.do"/>';
    if (popupUrl != null) {
      if (popupUrl.indexOf("?") < 0) {
        popupUrl += "?";
      } 
      else {
        popupUrl += "&";
      }
    }
    popupUrl += 'timestamp=' + timestamp + '&parentFormName=' + formName +
      '&processOid=' + processOid + '&logtime=' + logtime + '&userId=' + userId + '&changeIn=' + changeIn;
    var windowName = formName;
    var windowFeatures = 'width=500,height=300,scrollbars=yes,resizable=yes';
    var popupWindow = window.open(popupUrl, windowName, windowFeatures);
    if (popupWindow != null) {
      if (popupWindow.opener == null) {
        popupWindow.opener = self;
      }
    }
    popupWindow.focus();
  }
  
  function setComments(formName, processOid, logtime, userId, changeIn, comments) {
    var thisForm = document.forms[formName];
    if (thisForm != null) {
      thisForm.filter.value = <c:out value="${processChangesForm.map.filter}"/>;
      thisForm.entriesPerPage.value != <c:out value="${processChangesForm.map.entriesPerPage}"/>;
      thisForm.processOid.value = processOid;
      thisForm.logtime.value = logtime;
      thisForm.userId.value = userId;
      thisForm.changeIn.value = changeIn;
      thisForm.comments.value = comments;
      thisForm.action = '<html-el:rewrite page="/bp/processChangeSave.do"/>';
      thisForm.submit();
    }
  }

  function gotoFirstPage(formName) {
    if (doValidateEntriesPerPage(formName) == false) {
      return false;
    }
    var thisForm = document.forms[formName];
    if (thisForm != null) {
      thisForm.currentPageNumber.value = 1;
      thisForm.filter.value = <c:out value="${processChangesForm.map.filter}"/>;
      thisForm.submit();
    }
  }
  
  function gotoPreviousPage(formName) {
    if (doValidateEntriesPerPage(formName) == false) {
      return false;
    }
    var thisForm = document.forms[formName];
    if (thisForm != null) {
      var currentPageNumber = thisForm.currentPageNumber.value;
      currentPageNumber--;
      if (thisForm.entriesPerPage.value != <c:out value="${processChangesForm.map.entriesPerPage}"/>) {
        currentPageNumber = 1;
      }
      if (currentPageNumber > 0) {
        thisForm.currentPageNumber.value = currentPageNumber;
        thisForm.filter.value = <c:out value="${processChangesForm.map.filter}"/>;
        thisForm.submit();
      }
    }
  }
  
  function gotoNextPage(formName) {
    if (doValidateEntriesPerPage(formName) == false) {
      return false;
    }
    var thisForm = document.forms[formName];
    if (thisForm != null) {
      var currentPageNumber = thisForm.currentPageNumber.value;
      currentPageNumber++;
      if (thisForm.entriesPerPage.value != <c:out value="${processChangesForm.map.entriesPerPage}"/>) {
        currentPageNumber = 1;
      }
      if (currentPageNumber <= thisForm.totalPageNumber.value) {
        thisForm.currentPageNumber.value = currentPageNumber;
        thisForm.filter.value = <c:out value="${processChangesForm.map.filter}"/>;
        thisForm.submit();
      }
    }
  }
  
  function gotoLastPage(formName) {
    if (doValidateEntriesPerPage(formName) == false) {
      return false;
    }
    var thisForm = document.forms[formName];
    if (thisForm != null) {
      if (thisForm.entriesPerPage.value != <c:out value="${processChangesForm.map.entriesPerPage}"/>) {
        thisForm.currentPageNumber.value = 1;
      }
      else {
        thisForm.currentPageNumber.value = thisForm.totalPageNumber.value;
      }
      thisForm.filter.value = <c:out value="${processChangesForm.map.filter}"/>;
      thisForm.submit();
    }
  }
  
  function doGo(formName) {
    if (doValidateEntriesPerPage(formName) == false) {
      return false;
    }
    var thisForm = document.forms[formName];
    if (thisForm != null) {
      if (thisForm.entriesPerPage.value != <c:out value="${processChangesForm.map.entriesPerPage}"/>) {
        thisForm.filter.value = <c:out value="${processChangesForm.map.filter}"/>;
        thisForm.currentPageNumber.value = 1;
        thisForm.submit();
        return true;
      }
    }
    return false;
  }
  
  function checkNumberOnly(e) {
    var charCode = (navigator.appName == "Netscape") ? e.which : e.keyCode;
    if (charCode > 31 && (charCode < 48 || charCode > 57)) {
      return false;
    }
    else {
      return true;
    }
  }
  
  function doValidateEntriesPerPage(formName) {
    var thisForm = document.forms[formName];
    if (thisForm != null) {
      if (thisForm.entriesPerPage == null) {
        return true;
      }
      var entriesPerPageString = thisForm.entriesPerPage.value;
      var len = entriesPerPageString.length;
      var i = 0;
      for (i = 0; i < len; i++) {
        if (entriesPerPageString.charAt(i) < '0' || entriesPerPageString.charAt(i) > '9') {
          alert("<bean-el:message key="bp.common.pagination.validation.itemsPerPage" bundle="bp.messages"/>");
          thisForm.entriesPerPage.select();
          thisForm.entriesPerPage.focus();
          return false;
        }
      }
      if (thisForm.entriesPerPage.value < 1 || thisForm.entriesPerPage.value > 2147483647) {
        alert("<bean-el:message key="bp.common.pagination.validation.itemsPerPage" bundle="bp.messages"/>");
        thisForm.entriesPerPage.select();
        thisForm.entriesPerPage.focus();
        return false;
      }
      else {
        return true;
      }
    }
    return false;
  }

  function doFilterGo(formName) {
    if (doValidateEntriesPerPage(formName) == false) {
      return false;
    }
    var thisForm = document.forms[formName];
    if (thisForm != null) {
      thisForm.currentPageNumber.value = 0;
      thisForm.submit();
      return true;
    }
    return false;
  }
  
</script>

<% 
  java.util.HashMap map = new java.util.HashMap();
  String procOid = request.getParameter("processOid"); 
  if (procOid != null && procOid.length() > 0) {
    map.put("processOid", procOid);
  }
  else {
    map.put("processOid", "-1");
  }
  pageContext.setAttribute("pagetabParam", map, PageContext.PAGE_SCOPE);
%>

<c:set var="editImg">
<img src="<%= ctxPath %>/mc/images/action/icon_edit.gif" width="15" height="15" border="0" class="actionIcon" alt="<bean-el:message key="image.alt.edit" bundle="mc.messages"/>" title="<bean-el:message key="image.alt.edit" bundle="mc.messages"/>">
</c:set>

<html-el:form action="/bp/processChanges.do" onsubmit="return doValidateEntriesPerPage(processChangesForm);">
<html-el:hidden name="processChangesForm" property="processOid"/>
<html-el:hidden name="processChangesForm" property="logtime"/>
<html-el:hidden name="processChangesForm" property="userAlias"/>
<html-el:hidden name="processChangesForm" property="userId"/>
<html-el:hidden name="processChangesForm" property="changeIn"/>
<html-el:hidden name="processChangesForm" property="comments"/>
<html-el:hidden name="processChangesForm" property="forwardAction"/>
<html-el:hidden name="processChangesForm" property="currentPageNumber"/>
<html-el:hidden name="processChangesForm" property="totalPageNumber"/>
<html-el:hidden name="processChangesForm" property="lastPage"/>
<table class="zoneFive" width="100%" border="0" cellspacing="0" cellpadding="0" summary="content area">
  <tr>
    <td valign="top" width="100%">
      <div class="pageTitle"><c:out value="${processChangesView.map.name}"/></div>
      <div class="errorMessage"><html-el:errors bundle="bp.messages"/></div>
      <%@include file="/mc/common/pagetab.jsp" %>
      <logic:present name="processSubprocessPath" scope="session">
        <logic:greaterThan name="processSubprocessPath" property="processOid" value="0">
          <div class="breadcrumb">
            <html-el:link page="/bp/processSubprocessView.do" paramId="processOid" paramName="processSubprocessPath" paramProperty="processOid">
              <c:out value="${processSubprocessPath.map.processName}"/>
            </html-el:link>
            <logic:iterate id="subprocess" name="processSubprocessPath" property="subprocesses" indexId="i">
              &nbsp;<bean-el:message key="bp.process.taskSeparator" bundle="bp.messages"/>&nbsp;
              <logic:equal name="subprocess" property="lastone" value="false">
                <html-el:link page="/bp/processSubprocessTaskView.do" name="subprocess" property="parameterTaskMap">
                  <c:out value="${subprocess.map.number}"/>:
                  <c:out value="${subprocess.map.friendlyName}"/>
                </html-el:link>
                &nbsp;<bean-el:message key="bp.process.taskSeparator" bundle="bp.messages"/>&nbsp;
                <html-el:link page="/bp/processSubprocessView.do" name="subprocess" property="parameterMap">
                  <c:out value="${subprocess.map.subprocessName}"/>
                </html-el:link>
              </logic:equal>
              <logic:equal name="subprocess" property="lastone" value="true">
                <html-el:link page="/bp/processSubprocessTaskView.do" name="subprocess" property="parameterTaskMap">
                  <c:out value="${subprocess.map.number}"/>:
                  <c:out value="${subprocess.map.friendlyName}"/>
                </html-el:link>
                &nbsp;<bean-el:message key="bp.process.taskSeparator" bundle="bp.messages"/>&nbsp;
                <c:out value="${subprocess.map.subprocessName}"/>
              </logic:equal>
            </logic:iterate>
          </div>
        </logic:greaterThan>
      </logic:present>
      <div class="pageButtonWrap" align="right">
        <b><bean-el:message key="bp.process.processChanges.filter" bundle="bp.messages"/></b>&nbsp;
        <html-el:select name="processChangesForm" property="filter" size="1">
          <html-el:option value="0"><bean-el:message key="bp.process.processChanges.filter.anytime" bundle="bp.messages"/></html-el:option>
          <html-el:option value="1"><bean-el:message key="bp.process.processChanges.filter.today" bundle="bp.messages"/></html-el:option>
          <html-el:option value="2"><bean-el:message key="bp.process.processChanges.filter.thisWeek" bundle="bp.messages"/></html-el:option>
          <html-el:option value="3"><bean-el:message key="bp.process.processChanges.filter.lastWeek" bundle="bp.messages"/></html-el:option>
          <html-el:option value="4"><bean-el:message key="bp.process.processChanges.filter.thisMonth" bundle="bp.messages"/></html-el:option>
          <html-el:option value="5"><bean-el:message key="bp.process.processChanges.filter.lastMonth" bundle="bp.messages"/></html-el:option>
        </html-el:select>
        <html-el:button property="go" styleClass="inputButton"
          onclick="return doFilterGo('processChangesForm');">
          <bean-el:message key="button.goto" bundle="bp.messages"/>
        </html-el:button>
      </div>
      <div class="pageSubtitle">
        <span class="left">
          <logic:equal name="processChangesForm" property="filter" value="0">
            <bean:define id="filterstring">
              <bean-el:message key="bp.process.processChanges.filter.label.anytime" bundle="bp.messages"/>
            </bean:define>
          </logic:equal>
          <logic:equal name="processChangesForm" property="filter" value="1">
            <bean:define id="filterstring">
              <bean-el:message key="bp.process.processChanges.filter.label.today" bundle="bp.messages"/>
            </bean:define>
          </logic:equal>
          <logic:equal name="processChangesForm" property="filter" value="2">
            <bean:define id="filterstring">
              <bean-el:message key="bp.process.processChanges.filter.label.thisWeek" bundle="bp.messages"/>
            </bean:define>
          </logic:equal>
          <logic:equal name="processChangesForm" property="filter" value="3">
            <bean:define id="filterstring">
              <bean-el:message key="bp.process.processChanges.filter.label.lastWeek" bundle="bp.messages"/>
            </bean:define>
          </logic:equal>
          <logic:equal name="processChangesForm" property="filter" value="4">
            <bean:define id="filterstring">
              <bean-el:message key="bp.process.processChanges.filter.label.thisMonth" bundle="bp.messages"/>
            </bean:define>
          </logic:equal>
          <logic:equal name="processChangesForm" property="filter" value="5">
            <bean:define id="filterstring">
              <bean-el:message key="bp.process.processChanges.filter.label.lastMonth" bundle="bp.messages"/>
            </bean:define>
          </logic:equal>
          <logic:notEqual name="processChangesForm" property="filter" value="0">
            <logic:notEqual name="processChangesForm" property="filter" value="1">
              <logic:notEqual name="processChangesForm" property="filter" value="2">
                <logic:notEqual name="processChangesForm" property="filter" value="3">
                  <logic:notEqual name="processChangesForm" property="filter" value="4">
                    <logic:notEqual name="processChangesForm" property="filter" value="5">
                      <bean:define id="filterstring" value=" " />
                    </logic:notEqual>
                  </logic:notEqual>
                </logic:notEqual>
              </logic:notEqual>
            </logic:notEqual>
          </logic:notEqual>
          <% String filtername = (String)pageContext.getAttribute("filterstring"); %>
          <bean-el:message key="bp.process.processChanges.list" arg0="<%= filtername %>" bundle="bp.messages"/>
        </span>
        <span class="right">&nbsp;</span>
      </div>
      <table class="dataTable" border="0" cellspacing="1" cellpadding="2" summary="change list table" width="100%">
        <tr class="listHeader"> 
          <th id="Date" align="left" width="20%">
            <bean-el:message key="header.date" bundle="bp.messages"/>
          </th>
          <th id="ChangeIn" align="left" width="20%">
            <bean-el:message key="header.changeIn" bundle="bp.messages"/>
          </th>
          <th id="User" align="left" width="15%">
            <bean-el:message key="header.user" bundle="bp.messages"/>
          </th>
          <th id="Comments" align="left" width="40%">
            <bean-el:message key="header.comments" bundle="bp.messages"/>
          </th>
          <th id="Actions" align="left" nowrap width="5%">
            <bean-el:message key="header.actions" bundle="bp.messages"/>
          </th>
        </tr>
        <logic:empty name="processChangesView" property="changes">
          <tr class="listEven">
            <td align="center" colspan="6">
              <bean-el:message key="bp.process.processChanges.noChange" bundle="bp.messages"/>
            </td>
          </tr>
        </logic:empty>
        <logic:notEmpty name="processChangesView" property="changes">
          <logic:iterate id="change" name="processChangesView" property="changes" indexId="i">
            <tr class="<%=i.intValue() % 2 == 0 ? "listEven" : "listOdd" %>">
              <td headers="Date">
                <bean:write name="change" property="date" formatKey="format.datetime.short" bundle="mc.messages"/>
              </td>
              <td headers="ChangeIn">
                <logic:equal name="change" property="changeIn" value="101">
                  <bean-el:message key="bp.process.processChanges.changeIn.configure" bundle="bp.messages"/>
                </logic:equal>
                <logic:equal name="change" property="changeIn" value="102">
                  <bean-el:message key="bp.process.processChanges.changeIn.version" bundle="bp.messages"/>
                </logic:equal>
                <logic:equal name="change" property="changeIn" value="103">
                  <bean-el:message key="bp.process.processChanges.changeIn.description" bundle="bp.messages"/>
                </logic:equal>
                <logic:equal name="change" property="changeIn" value="104">
                  <bean-el:message key="bp.process.processChanges.changeIn.status" bundle="bp.messages"/>
                </logic:equal>
                <logic:equal name="change" property="changeIn" value="105">
                  <bean-el:message key="bp.process.processChanges.changeIn.manager" bundle="bp.messages"/>
                </logic:equal>
                <logic:equal name="change" property="changeIn" value="106">
                  <bean-el:message key="bp.process.processChanges.changeIn.category" bundle="bp.messages"/>
                </logic:equal>
                <logic:equal name="change" property="changeIn" value="107">
                  <bean-el:message key="bp.process.processChanges.changeIn.priority" bundle="bp.messages"/>
                </logic:equal>
                <logic:equal name="change" property="changeIn" value="108">
                  <bean-el:message key="bp.process.processChanges.changeIn.duration" bundle="bp.messages"/>
                </logic:equal>
                <logic:equal name="change" property="changeIn" value="109">
                  <bean-el:message key="bp.process.processChanges.changeIn.durationType" bundle="bp.messages"/>
                </logic:equal>
                <logic:equal name="change" property="changeIn" value="110">
                  <bean-el:message key="bp.process.processChanges.changeIn.step.documentation" bundle="bp.messages"/>
                </logic:equal>
                <logic:equal name="change" property="changeIn" value="111">
                  <bean-el:message key="bp.process.processChanges.changeIn.step.priority" bundle="bp.messages"/>
                </logic:equal>
                <logic:equal name="change" property="changeIn" value="112">
                  <bean-el:message key="bp.process.processChanges.changeIn.step.duration" bundle="bp.messages"/>
                </logic:equal>
                <logic:equal name="change" property="changeIn" value="113">
                  <bean-el:message key="bp.process.processChanges.changeIn.step.durationType" bundle="bp.messages"/>
                </logic:equal>
                <logic:equal name="change" property="changeIn" value="120">
                  <bean-el:message key="bp.process.processChanges.changeIn.step.alert.reminder.deliveryType" bundle="bp.messages"/>
                </logic:equal>
                <logic:equal name="change" property="changeIn" value="121">
                  <bean-el:message key="bp.process.processChanges.changeIn.step.alert.reminder.status" bundle="bp.messages"/>
                </logic:equal>
                <logic:equal name="change" property="changeIn" value="122">
                  <bean-el:message key="bp.process.processChanges.changeIn.step.alert.reminder.sendToManager" bundle="bp.messages"/>
                </logic:equal>
                <logic:equal name="change" property="changeIn" value="123">
                  <bean-el:message key="bp.process.processChanges.changeIn.step.alert.reminder.sendToPerformer" bundle="bp.messages"/>
                </logic:equal>
                <logic:equal name="change" property="changeIn" value="124">
                  <bean-el:message key="bp.process.processChanges.changeIn.step.alert.reminder.alertUsers" bundle="bp.messages"/>
                </logic:equal>
                <logic:equal name="change" property="changeIn" value="125">
                  <bean-el:message key="bp.process.processChanges.changeIn.step.alert.reminder.alertGroups" bundle="bp.messages"/>
                </logic:equal>
                <logic:equal name="change" property="changeIn" value="126">
                  <bean-el:message key="bp.process.processChanges.changeIn.step.alert.reminder.noticeTime" bundle="bp.messages"/>
                </logic:equal>
                <logic:equal name="change" property="changeIn" value="130">
                  <bean-el:message key="bp.process.processChanges.changeIn.step.alert.completion.deliveryType" bundle="bp.messages"/>
                </logic:equal>
                <logic:equal name="change" property="changeIn" value="131">
                  <bean-el:message key="bp.process.processChanges.changeIn.step.alert.completion.status" bundle="bp.messages"/>
                </logic:equal>
                <logic:equal name="change" property="changeIn" value="132">
                  <bean-el:message key="bp.process.processChanges.changeIn.step.alert.completion.sendToManager" bundle="bp.messages"/>
                </logic:equal>
                <logic:equal name="change" property="changeIn" value="133">
                  <bean-el:message key="bp.process.processChanges.changeIn.step.alert.completion.sendToPerformer" bundle="bp.messages"/>
                </logic:equal>
                <logic:equal name="change" property="changeIn" value="134">
                  <bean-el:message key="bp.process.processChanges.changeIn.step.alert.completion.alertUsers" bundle="bp.messages"/>
                </logic:equal>
                <logic:equal name="change" property="changeIn" value="135">
                  <bean-el:message key="bp.process.processChanges.changeIn.step.alert.completion.alertGroups" bundle="bp.messages"/>
                </logic:equal>
                <logic:equal name="change" property="changeIn" value="140">
                  <bean-el:message key="bp.process.processChanges.changeIn.step.alert.available.deliveryType" bundle="bp.messages"/>
                </logic:equal>
                <logic:equal name="change" property="changeIn" value="141">
                  <bean-el:message key="bp.process.processChanges.changeIn.step.alert.available.status" bundle="bp.messages"/>
                </logic:equal>
                <logic:equal name="change" property="changeIn" value="142">
                  <bean-el:message key="bp.process.processChanges.changeIn.step.alert.available.sendToManager" bundle="bp.messages"/>
                </logic:equal>
                <logic:equal name="change" property="changeIn" value="143">
                  <bean-el:message key="bp.process.processChanges.changeIn.step.alert.available.sendToPerformer" bundle="bp.messages"/>
                </logic:equal>
                <logic:equal name="change" property="changeIn" value="144">
                  <bean-el:message key="bp.process.processChanges.changeIn.step.alert.available.alertUsers" bundle="bp.messages"/>
                </logic:equal>
                <logic:equal name="change" property="changeIn" value="145">
                  <bean-el:message key="bp.process.processChanges.changeIn.step.alert.available.alertGroups" bundle="bp.messages"/>
                </logic:equal>
                <logic:equal name="change" property="changeIn" value="150">
                  <bean-el:message key="bp.process.processChanges.changeIn.step.alert.assignment.deliveryType" bundle="bp.messages"/>
                </logic:equal>
                <logic:equal name="change" property="changeIn" value="151">
                  <bean-el:message key="bp.process.processChanges.changeIn.step.alert.assignment.status" bundle="bp.messages"/>
                </logic:equal>
                <logic:equal name="change" property="changeIn" value="152">
                  <bean-el:message key="bp.process.processChanges.changeIn.step.alert.assignment.sendToManager" bundle="bp.messages"/>
                </logic:equal>
                <logic:equal name="change" property="changeIn" value="153">
                  <bean-el:message key="bp.process.processChanges.changeIn.step.alert.assignment.sendToPerformer" bundle="bp.messages"/>
                </logic:equal>
                <logic:equal name="change" property="changeIn" value="154">
                  <bean-el:message key="bp.process.processChanges.changeIn.step.alert.assignment.alertUsers" bundle="bp.messages"/>
                </logic:equal>
                <logic:equal name="change" property="changeIn" value="155">
                  <bean-el:message key="bp.process.processChanges.changeIn.step.alert.assignment.alertGroups" bundle="bp.messages"/>
                </logic:equal>
                <logic:equal name="change" property="changeIn" value="160">
                  <bean-el:message key="bp.process.processChanges.changeIn.step.alert.overdue.deliveryType" bundle="bp.messages"/>
                </logic:equal>
                <logic:equal name="change" property="changeIn" value="161">
                  <bean-el:message key="bp.process.processChanges.changeIn.step.alert.overdue.status" bundle="bp.messages"/>
                </logic:equal>
                <logic:equal name="change" property="changeIn" value="162">
                  <bean-el:message key="bp.process.processChanges.changeIn.step.alert.overdue.sendToManager" bundle="bp.messages"/>
                </logic:equal>
                <logic:equal name="change" property="changeIn" value="163">
                  <bean-el:message key="bp.process.processChanges.changeIn.step.alert.overdue.sendToPerformer" bundle="bp.messages"/>
                </logic:equal>
                <logic:equal name="change" property="changeIn" value="164">
                  <bean-el:message key="bp.process.processChanges.changeIn.step.alert.overdue.alertUsers" bundle="bp.messages"/>
                </logic:equal>
                <logic:equal name="change" property="changeIn" value="165">
                  <bean-el:message key="bp.process.processChanges.changeIn.step.alert.overdue.alertGroups" bundle="bp.messages"/>
                </logic:equal>
              </td>
              <td headers="User">
                <logic:notEmpty name="change" property="userFullName">
                  <c:out value="${change.map.userFullName}"/>
                </logic:notEmpty>
                <logic:empty name="change" property="userFullName">
                  &nbsp;
                </logic:empty>
              </td>
              <td headers="Comments">
                <c:out value="${change.map.comments}" escapeXml="false"/>
              </td>
              <td headers="Actions" nowrap align="left">
                <a href='#' onclick="JavaScript:commentsEditPopup('processChangesForm', '<c:out value="${change.map.oid}"/>', '<c:out value="${change.map.logtime}"/>', '<c:out value="${change.map.userId}"/>', '<c:out value="${change.map.changeIn}"/>');"><c:out value='${editImg}' escapeXml="false"/></a>
              </td>
            </tr>
          </logic:iterate>
        </logic:notEmpty>
      </table>
      <logic:empty name="processChangesView" property="changes">
        <html-el:hidden name="processChangesForm" property="entriesPerPage"/>
      </logic:empty>
      <logic:notEmpty name="processChangesView" property="changes">
        <div class="pagination">
          <bean-el:message key="bp.common.pagination.show" bundle="bp.messages"/>
          <html-el:text name="processChangesForm" property="entriesPerPage" size="10" maxlength="10" onkeypress="return checkNumberOnly(event)"/>
          <bean-el:message key="bp.common.pagination.itemsPerPage" bundle="bp.messages"/>
          &nbsp;
          <html-el:button property="go" styleClass="inputButton"
            onclick="return doGo('processChangesForm');">
            <bean-el:message key="button.goto" bundle="bp.messages"/>
          </html-el:button>
          <logic:greaterThan name="processChangesForm" property="totalPageNumber" value="1">
            &nbsp;&nbsp;&nbsp;
            <logic:greaterThan name="processChangesForm" property="currentPageNumber" value="0">
              <logic:greaterThan name="processChangesForm" property="totalPageNumber" value="1">
                <logic:greaterThan name="processChangesForm" property="currentPageNumber" value="1">
                  <a href="#" class="paginationBtn" onclick="javascript:gotoFirstPage('processChangesForm')">
                    <bean-el:message key="bp.common.pagination.first" bundle="bp.messages"/></a>
                  <a href="#" class="paginationBtn" onclick="javascript:gotoPreviousPage('processChangesForm')">
                    <bean-el:message key="bp.common.pagination.previous" bundle="bp.messages"/></a>
                </logic:greaterThan>
              </logic:greaterThan>
              <bean:define id="currentPageNumberAttr" name="processChangesForm" property="currentPageNumber"/>
              <bean:define id="totalPageNumberAttr" name="processChangesForm" property="totalPageNumber"/>
              <% Integer currentPageNumberInt = (Integer)pageContext.getAttribute("currentPageNumberAttr"); %>
              <% Integer totalPageNumberInt = (Integer)pageContext.getAttribute("totalPageNumberAttr"); %>
              <bean-el:message key="bp.common.pagination.pageOf" 
                arg0="<%= currentPageNumberInt.toString() %>" 
                arg1="<%= totalPageNumberInt.toString() %>" bundle="bp.messages"/>
              <logic:greaterThan name="processChangesForm" property="totalPageNumber" value="1">
                <logic:equal name="processChangesForm" property="lastPage" value="false">
                  <a href="#" class="paginationBtn" onclick="javascript:gotoNextPage('processChangesForm')">
                    <bean-el:message key="bp.common.pagination.next" bundle="bp.messages"/></a>
                  <a href="#" class="paginationBtn" onclick="javascript:gotoLastPage('processChangesForm')">
                    <bean-el:message key="bp.common.pagination.last" bundle="bp.messages"/></a>
                </logic:equal>
              </logic:greaterThan>
            </logic:greaterThan>
          </logic:greaterThan>
        </div>
      </logic:notEmpty>
    </td>
  </tr>
</table>
</html-el:form>

